package com.cskaoyan.javase.oop3._1interface._5extend;
/**
 * 链式调用
 *      new Student().getTeacher().show();
 * 链式调用的前提是
 *      操作方法的调用本质是操作返回值
 *      既然能够链式调用,说明前面方法的调用结果是一个对象(因为只有对象才能够继续调用方法)
 *
 *
 * 优点:
 *      简单快捷,一行调用了很多方法
 *      理论上来说,中间对象没有引用指向,会更快成为垃圾等待垃圾回收(理论上)
 * 缺点:
 *      中间过程产生的中间对象,都不能再用了
 *
 * @since 09:52
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        new Student().getTeacher().show();
    }
}
class Student{
    public Student() {
    }

    public Teacher getTeacher(){
        return new Teacher();
    }
}
class Teacher{
    public void show(){
        System.out.println("秀一波~~~");
    }
}